<?php

/*
Copyright 2007,2008 Benjamin V King

BH Widgets is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

BH Widgets is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with BH Widgets; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
*/

require_once('BH_Widget_Base.php');


abstract class BH_Taxonomy_Widget extends BH_Controllable_Widget_Base {
	
	var $taxonomy;
	
	function __construct($taxonomy) {
		$this->taxonomy = $taxonomy;
	}
	
	function get_taxonomies($where ='') {
		global $wpdb;
		$sql = "select * from ". $wpdb->terms ." where term_id in (select term_id from ".$wpdb->term_taxonomy ." where taxonomy='". $this->taxonomy ."' and count > 0)";

		if ($where)
			$sql .= " and $where";

		$sql .=" order by name";
		return $wpdb->get_results($sql, OBJECT);
	}
	
	
	static function get_related_objectids($termid) {
		global $wpdb;
		
		$sql = "select object_id from ". $wpdb->term_relationships ." where term_taxonomy_id in";
		$sql .=" (select distinct r.term_taxonomy_id from ". $wpdb->term_taxonomy ." t, ". $wpdb->term_relationships ." r";
		$sql .=" where t.term_id = '". $termid ."' and t.term_taxonomy_id=r.term_taxonomy_id)";
		
		return $wpdb->get_col($sql);
	}

}

?>
